bootloader: Add an aboot (Android) bootloader backend
authorEric Curtin <ecurtin@redhat.com>
Tue, 13 Dec 2022 14:12:25 +0000 (14:12 +0000)
committerEric Curtin <ecurtin@redhat.com>
Thu, 15 Dec 2022 16:09:08 +0000 (16:09 +0000)
commit97117753e3e7e0e715c17d3aabff26563230db96
treed5a51c39393deaf27d0848ce25ac792a9105398b
parentad96b8afea4dab3c2ab3ff8808b0b4fc3bf243f0
bootloader: Add an aboot (Android) bootloader backend

aboot is special in that it packages kernel, initrd, cmdline, dtb and
signature one combined image (similar to upcoming unified kernel
images). This is then loaded as an image into an aboot partition.

This image is signed by the OS vendor and covers everything in the
image. So locally on the deployed system it should not be possible to
boot an unsigned image (unless signature checking is turned off).

We call a shell script aboot-deploy when it is required to write a new
image to the aboot partition (a file typically starting with aboot and
ending in .img extension). This shell script may also read some
configurations from a .cfg file.

Signed-off-by: Eric Curtin <ecurtin@redhat.com>
Makefile-libostree.am
rust-bindings/sys/src/lib.rs
src/libostree/ostree-bootloader-aboot.c [new file with mode: 0644]
src/libostree/ostree-bootloader-aboot.h [new file with mode: 0644]
src/libostree/ostree-repo-private.h
src/libostree/ostree-sysroot-deploy.c
src/libostree/ostree-sysroot.c